home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1991 March
/
64er_Magazin_91-03_1991_Markt__Technik_de_Side_B.d64
/
highspeed c128.a
< prev
next >
Wrap
Text File
|
2022-10-26
|
5KB
|
74 lines
ready.
0000 ;*******************
0001 ;* highspeed c128 *
0002 ;* quellcode *
0003 ;* written in 1990 *
0004 ;* by lars werner *
0005 ;*******************
0006 ;
0007 *= $10a6
0008 .bank $0f
0009 .obj m
0010 ;
0011 rando = 50
0012 randu = 250
0013 raster = $d012
0014 mask = $d01a
0015 request = $d019
0016 ciarequest = $dc0d
0017 ;
0018 sei
0019 lda $0314 ;alten irq
0020 ldx $0315 ;merken
0021 sta irqalt
0022 stx irqalt+1
0023 ;
0024 lda #<irqneu ;neuen irq
0025 ldx #>irqneu ;setzen
0026 sta $0314
0027 stx $0315
0028 ;
0029 lda #rando ;rasterzeilen-irq
0030 sta raster ;setzen
0031 lda raster-1
0032 and #%01111111
0033 sta raster-1
0034 lda #%10000001
0035 sta mask
0036 cli
0037 rts
0038 ;
0039 irqneu lda request ;raster-irq-register
0040 sta request ;loeschen
0041 bmi rasterirq ;auf timer-irq pruefen
0042 ; ;wenn aktiv =>rasterirq
0043 ;
0044 timerirq lda ciarequest ;timer-irq-register loeschen
0045 cli
0046 jmp (irqalt) ;sprung zum timer-irq
0047 ;
0048 rasterirq lda raster ;rasterzeile holen
0049 cmp #randu ;unterer bildschirmrand ?
0050 bcs ok ;wenn erreicht sprung => ok
0051 ;
0052 lda #252 ;taktfrequenz auf
0053 sta $d030 ;1 mhz setzen
0054 lda #randu ;neue rasterzeile holen
0055 jmp exit ;irq verlassen
0056 ;
0057 ok lda #253 ;taktfrequenz auf
0058 sta $d030 ;2 mhz setzen
0059 lda #rando ;neue rasterzeile holen
0060 ;
0061 exit sta raster ;neue rasterzeile setzen
0062 jmp (irqalt) ;irq verlassen
0063 ;
0064 irqalt .byte $00,$00
0065 ;
0066 .end
0067
ready.